package com.atguigu.bean;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@Component
public class Boss2 {
    private Car car;

    /**
     * 如果有2个构造函数，则参数上加和不加@Autowired都无法实现自动装配
     * 只有在方法上加上@Autowired，才能实现自动装配
     *
     * @param car
     */
    @Autowired
    public Boss2(Car car) {
        this.car = car;
    }

    public Boss2() {
    }

//    /**
//     * 这种非set方法参数无法自动装配bean
//     *
//     * @param car
//     */
//    public void isNotSet(@Autowired Car car) {
//        this.car = car;
//    }
//
//    /**
//     * 这种set方法参数可以自动装配bean
//     *
//     * @param car
//     */
//    @Autowired
//    public void isNotSet(Car car) {
//        this.car = car;
//    }

    @Override
    public String toString() {
        return "Boss2{" +
                "car=" + car +
                '}';
    }
}
